﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Ccit.ClassLibrary;

namespace Ccit.SysPlat.Purview
{
    /// <summary>
    /// Description: 系统平台权限菜单 -> 权限接口
    /// Author: tim 2010-03-11
    /// </summary>
    public interface IPurview
    {
        /// <summary>
        /// 获取用户所具有的操作权限菜单Ids
        /// </summary>
        /// <param name="userId">用户Id</param>
        /// <param name="enUserType">用户类型枚举</param>
        /// <param name="organId">机构Id</param>
        /// <returns></returns>
        string GetUserPrvMenuIds(string userId, eUserType enUserType, string organId);

        /// <summary>
        /// 获取用户登录主页时所展现的权限菜单集合
        /// </summary>
        /// <param name="userId">用户Id</param>
        /// <param name="enUserType">用户类型</param>
        /// <param name="organId">机构Id</param>
        /// <returns></returns>
        List<MsMenu> GetUserPrvMenuList(string userId, eUserType enUserType, string organId);


        /// <summary>
        /// 根据模块菜单Id获取该模块下指定用户所具有的全部菜单数据
        /// (首页切换模块菜单时使用)
        /// </summary>
        /// <param name="modMenuId">模块菜单Id</param>
        /// <param name="userId">用户Id</param>
        /// <param name="enUserType">用户类型</param>
        /// <param name="organId">机构Id</param>
        /// <returns></returns>
        List<MsMenu> GetUserMenusByModId(string modMenuId, string userId, eUserType enUserType, string organId);
    }
}
